#include "stdafx.h"


void game_machine :: cast_land   (short emit, short abil, short target)
{     
    char radius = Abilities[abil].radius;
    LOGMSG("[land] "+ inspect_cast(emit, abil, target));
    if(radius == 0)
    {
        if(Abilities[abil].ticks == 0)
        {
            LOGMSG("direct damage ! "+TO_STR(Abilities[abil].dmg));
            Characters[target].life -= Abilities[abil].dmg;
        }
        else // has dot
        {
            LOGMSG("dot damage !");
            cast_dot(emit, abil, target);
        }
    }
    else
    {
        Vector2f sphere_orig;
        LOGMSG("area damage !");
        if(Abilities[abil].range == 0) // self emit
            sphere_orig = CharPositions[emit];
        else if(Abilities[abil].mask & MISSILE) // 
            sphere_orig = projectile;

        // do the sc query
    }

}
